¿Cómo agrego nuevos estilos a los documentos de Google?


299

Google docs tiene un buen conjunto de estilos como "Texto normal" y "Encabezado 1".

¿Cómo agrego el mío? Quiero agregar un estilo llamado "código" para el texto que es código de programación.


42
Exactamente por qué llegué a esta pregunta. :) Solo quería hacer un estilo llamado Código y Código en línea que no fuera un estilo de párrafo.
Robert Koritnik

18
Sé la respuesta pero no puedo agregarla porque no tengo suficiente reputación. Básicamente, puede utilizar los scripts de Google Apps, esto es lo que hice: pastebin.com/4pNBJ9pC . Para habilitarlo, debe crear un nuevo script: Tools>> Script Manager>> Newy pegar el código allí. Luego tendrá que autorizar el script y volver a cargar el documento para que el menú aparezca en la barra de menú. Luego seleccione un parche de texto y elija Extras>>Apply code style
Trident D'Gao

3
Sé mi respuesta, pero mi reputación 101, aparentemente, no es suficiente. A partir del 3/14 ', una vez que actualice los encabezados existentes mediante "Actualizar el encabezado X para que coincida", GDocs agregará un encabezado Y adicional. Por lo tanto, comienza con solo el encabezado 1,2,3, pero una vez que actualice el encabezado 3, GDocs presentará el Título 4. Una vez que actualice el Título 4, GDocs presentará el Título 5, etc.
JJ Rohrer

77
Hay una extensión que lo hace: chrome.google.com/webstore/detail/paragraph-styles%20/… (No puedo publicar una respuesta debido a un error en stackexchange; dice que necesito 10 rep para responder, yo ' tengo 103 repeticiones, no hay recuadro de respuesta disponible.)
Chris Moschini

1
La respuesta de @AlekseyBykov me ayudó con esta. He actualizado y solucionado algunos problemas aquí github.com/cr8ivecodesmith/google_docs_scripts/blob/master/…
cr8ivecodesmith

Respuestas:


136

En este momento no es posible agregar más estilos o cambiar el nombre de los existentes, pero puede modificarlos para que coincidan con sus necesidades.

Por ejemplo, puede diseñar su código como desee y luego seleccionando uno de los encabezados y eligiendo el Update Heading # to match selection, ese estilo particular podría convertirse en su nuevo estilo de "Código" .

Luego seleccione otra cosa y aplique ese encabezado y listo.

Estilos en documentos de google


104
La desventaja es que esto incluirá "código" en mi tabla de contenido. : / Descubrí que el uso del estilo de subtítulos para el código evita que se muestre en la tabla de contenido.
Mark Nadig

99
+1 @ digger69 para ese consejo. Usar "Subtítulos" para el código es el mejor consejo que he recibido de este StackExchange. ¡Excelente para tener una altura de línea de 1.15 en todo el documento, pero 1.0 para el código! : D
ELLIOTTCABLE

99
Como también mencioné en la respuesta de digger69, otra desventaja es que esto no permite estilos en línea; tiene que estar en su propia línea. Por supuesto, el código corto, o más probablemente, los términos relacionados con el código (como etiquetas, funciones o nombres de variables) a menudo quieren vivir en línea dentro de un párrafo de texto.
Drewdavid

2
¿Es cierto que tiene que ser "bloque", lo que significa que toda la línea o párrafo debe tener el mismo estilo? No puede ser una línea con codetexto normal mezclado así: el windowobjeto
nopole

12
Solo quiero señalar que no tiene sentido que los "expertos en software" de Google nunca hayan agregado una función para agregar un nuevo estilo a Docs. Esa debería haber sido una de sus prioridades iniciales en la década más o menos, esta aplicación web ha estado disponible.
Spencer Williams el

56

Como Lipis señala, aún no puede crear sus propios estilos. Por lo tanto, tiene que reutilizar uno existente. La desventaja de usar el encabezado es que esto dará como resultado un "código" en mi tabla de contenido (TOC). : / Descubrí que el uso de estilos de Título y Subtítulo para el código evita que esos estilos se muestren en la tabla de contenido.


3
El principal inconveniente de este enfoque es que, si bien puede usar ⌘ + Alt + 6 para usar este diseño si anula el sexto encabezado, no hay un método abreviado de teclado coincidente para el estilo de Subtítulo.
Amit Kotlovski

55
La otra nota es que esto no parece funcionar en línea, tiene que estar en su propia línea (cierto para todos los estilos que imagino)
Drewdavid

27

Muchas de las soluciones no funcionan en línea. Esta es una solución limpia ofrecida por @AlekseyBykov usando los Scripts de la Aplicación de Google para agregar una acción de menú personalizada:

  1. Crear un nuevo script ( Tools > Script Editor)
  2. Copie el siguiente código en el editor:
// Add new menu item
function onOpen() {
  DocumentApp.getUi()
  .createMenu('Styles')
  .addItem('Format Code', 'formatCode')
  .addToUi();
}

// Define code styling
var style = {};
style[DocumentApp.Attribute.FONT_FAMILY] = DocumentApp.FontFamily.CONSOLAS;
style[DocumentApp.Attribute.FONT_SIZE] = 10;
style[DocumentApp.Attribute.BACKGROUND_COLOR] = "#DDDDDD";
style[DocumentApp.Attribute.FOREGROUND_COLOR] = "#333333";
style[DocumentApp.Attribute.BOLD] = false;

// Apply code formatting
function formatCode() {
  var selection = DocumentApp.getActiveDocument().getSelection();
  if (selection) {
    var elements = selection.getRangeElements();
    for (var i = 0; i < elements.length; i++) {
      var element = elements[i];

      // Only modify elements that can be edited as text; skip images and other non-text elements.
      if (element.getElement().editAsText) {
        var text = element.getElement().editAsText();

        // Style the selected part of the element, or the full element if it's completely selected.
        if (element.isPartial()) {
          text.setAttributes(element.getStartOffset(), element.getEndOffsetInclusive(), style);
        } else {
          text.setAttributes(style);
        }
      }
    }
  }
}
  1. Asigne un activador para ejecutar la onOpenfunción "Al abrir" ( Edit > Current Project's Triggers)
  2. Después de autorizar el script, vuelva a cargar el documento original.
  3. Use el nuevo elemento del menú para formatear el texto seleccionado ( Styles > Format Code)

2
Excelente y funcionó perfectamente. Para un estilo de backtick más 'flojo': style [DocumentApp.Attribute.BACKGROUND_COLOR] = "#FFEEEE"; style [DocumentApp.Attribute.FOREGROUND_COLOR] = "# 880000";
Jim Morrison

1
cosas excelentes No me gustó que faltara el fondo entre las palabras, así que lo modifiqué para poner el contenido en una celda de tabla con un fondo sólido: gist.github.com/fatso83/ffb7871c537e04d9ce95f66fccc30495
oligofren

super bonito guión, gracias! Ahora podría extenderlo para admitir más estilos
irrealidad

15

La extensión gratuita Google Docs Paragraph Styles + permite crear estilos de párrafo personalizados (más la numeración del esquema del sistema decimal para encabezados y una tabla de contenido con numeración de página).

Lo acabo de probar y aquí está mi primera impresión:

  • Buen comienzo. Para documentos pequeños, debería ser bueno usar :-)
  • Sin embargo, funciona bastante lento, a pesar de que las versiones recientes ya mejoraron el rendimiento.
  • La interfaz de usuario no se integra con la interfaz de usuario de estilo Google Docs. Probablemente no sea posible de otra manera en la API de Google Docs.
  • La función de estilo original de Google Docs no conoce los estilos personalizados, ya que todo el texto con estilos personalizados tiene el formato "Texto normal". Puede usar ambos en paralelo, pero tenga en cuenta que el botón "Borrar formato" (parece " T x ") eliminará el formato de estilo personalizado del texto seleccionado.
  • Parece que almacena los estilos de tus personajes en un servicio web externo, lo que significa que debes confiarles el acceso a tus documentos de la forma en que los confías a Google ahora ...

Fuente: Reconociendo el comentario de Chris Moschini arriba, quien lo mencionó primero.


66
¿Existe algún riesgo de seguridad de datos relacionado con la instalación de este tipo de extensión de documentos o Google ha verificado que el código no es malicioso?
Gruber

77
Estos permisos parecen permitir, por ejemplo, que sus documentos se envíen o compartan con otros sin previo aviso. Eso ciertamente me asusta.
Reece

Como debería, @Reece! Gracias por la anotación.
Cheeso

11

Hasta hace poco, era posible editar la fuente CSS (hoja de estilo) y HTML de un documento. Tomó un poco de trabajo, pero si sabía HTML y CSS, podría agregar una clase CSS a su documento y luego editar el HTML para usarlo, por ejemplo, en el HTML

<span class='booktitle'>Infinite Jest</span>

y en el CSS

.booktitle { font-style:italic; }

Google ha eliminado más o menos esta capacidad con su nuevo formato, obligando a los documentos antiguos al nuevo formato. Pero, he oído que hay formas de mantener los documentos en el formato anterior, por lo que puede haber alguna esperanza.


1
Me encantaría más información sobre cómo hacer esto.
Estofado

2
No funciona, google ahora elimina todos los css excepto inlines
vs4vijay

2
La secuencia de comandos publicada anteriormente es casi la misma que esta característica. Después de la instalación, simplemente puede editar el styleobjeto según sea necesario. Es javascript, muy diferente al CSS, pero casi idéntico. Nota: no realiza llamadas externas, ni envía ni carga datos desde otro lugar.
Jonathan Cross